package com.newjiabo.ski.domain.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.newjiabo.common.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotEmpty;
import java.util.Date;
import java.util.List;

/**
 * {类内容}
 *
 * @author CaoMengHui.
 * @version 1.0
 * @since 2023/9/20 9:05
 */
public class SkiSnowFieldDTO {

    /**
     * 雪场名称
     */
    @NotEmpty(message = "雪场名称不能为空！")
    @ApiModelProperty(value = "雪场名称")
    private String snowField;

    /**
     * 雪场状态
     *
     * @see com.newjiabo.ski.domain.enums.SnowStatusEnum
     */
    @ApiModelProperty(value = "雪场状态：OPEN(店铺开启中), CLOSE(店铺关闭中)")
    private String snowStatus;

    /**
     * 雪场关闭时间
     */
    @ApiModelProperty(value = "雪场关闭时间")
    @JsonFormat(pattern = "HH:mm:ss")
    @DateTimeFormat(pattern = "HH:mm:ss")
    private Date snowEndTime;

    @ApiModelProperty(value = "雪场开始时间")
    @JsonFormat(pattern = "HH:mm:ss")
    @DateTimeFormat(pattern = "HH:mm:ss")
    private Date snowStartTime;

    /**
     * 详细地址
     */
    @NotEmpty(message = "详细地址不能为空！")
    @ApiModelProperty(value = "详细地址")
    private String snowAddressDetail;

    /**
     * 地址id
     */
    @NotEmpty(message = "地址id不能为空")
    @ApiModelProperty(value = "地址id")
    private String snowAddressIdPath;

    /**
     * 地址名称
     */
    @NotEmpty(message = "地址名称不能为空")
    @ApiModelProperty(value = "地址名称")
    private String snowAddressPath;

    /**
     * 经纬度
     */
    @NotEmpty(message = "经纬度不能为空")
    @ApiModelProperty(value = "经纬度")
    private String snowCenter;

    /**
     * 雪场简介
     */
    @ApiModelProperty(value = "雪场简介")
    private String snowDesc;

    @ApiModelProperty(value = "套餐id集合")
    List<String> setMealIds;

    public Date getSnowStartTime() {
        return snowStartTime;
    }

    public void setSnowStartTime(Date snowStartTime) {
        this.snowStartTime = snowStartTime;
    }

    public String getSnowField() {
        return snowField;
    }

    public void setSnowField(String snowField) {
        this.snowField = snowField;
    }

    public String getSnowStatus() {
        return snowStatus;
    }

    public void setSnowStatus(String snowStatus) {
        this.snowStatus = snowStatus;
    }

    public Date getSnowEndTime() {
        return snowEndTime;
    }

    public void setSnowEndTime(Date snowEndTime) {
        this.snowEndTime = snowEndTime;
    }

    public String getSnowAddressDetail() {
        return snowAddressDetail;
    }

    public void setSnowAddressDetail(String snowAddressDetail) {
        this.snowAddressDetail = snowAddressDetail;
    }

    public String getSnowAddressIdPath() {
        return snowAddressIdPath;
    }

    public void setSnowAddressIdPath(String snowAddressIdPath) {
        this.snowAddressIdPath = snowAddressIdPath;
    }

    public String getSnowAddressPath() {
        return snowAddressPath;
    }

    public void setSnowAddressPath(String snowAddressPath) {
        this.snowAddressPath = snowAddressPath;
    }

    public String getSnowCenter() {
        return snowCenter;
    }

    public void setSnowCenter(String snowCenter) {
        this.snowCenter = snowCenter;
    }

    public String getSnowDesc() {
        return snowDesc;
    }

    public void setSnowDesc(String snowDesc) {
        this.snowDesc = snowDesc;
    }

    public List<String> getSetMealIds() {
        return setMealIds;
    }

    public void setSetMealIds(List<String> setMealIds) {
        this.setMealIds = setMealIds;
    }
}
